// 数组可以实现存储很多数据的功能
#include <stdio.h>

#define NUM 5

// 声明获取最高分数的函数
float GetHighest(float arry[], int number);
// 声明输入分数的函数
void Input(float arry[], int number);

int main() {
    float score[NUM];
    float highest;
    // 调用输入分数的函数，将分数存入 score 数组
    Input(score, NUM);
    // 调用获取最高分数的函数，获取 score 数组中的最高分数并赋值给 highest
    highest = GetHighest(score, NUM);
    // 输出最高分数
    printf("The highest score is: %.2f\n", highest);
    return 0;
}

// 定义获取最高分数的函数
float GetHighest(float arry[], int number) {
    float largest = arry[0];
    // 遍历数组，从第二个元素开始比较
    for (int i = 1; i < number; i++) {
        if (arry[i] > largest) {
            // 如果当前元素比当前最大分数大，则更新最大分数
            largest = arry[i];
        }
    }
    // 返回最高分数
    return largest;
}

// 定义输入分数的函数
void Input(float arry[], int number) {
    printf("You are to enter %d scores.\n", number);
    // 遍历数组，逐个输入分数
    for (int i = 0; i < number; i++) {
        printf("Enter a Score:%d -->", i + 1);
        scanf("%f", &arry[i]);
    }
}